*,
*:before,
*:after {
  box-sizing: border-box;
  position: relative;
}

html,
body,
#root {
  height: 100%;
  width: 100%;
}

#root {
  display: grid;
  place-items: center;
}

#app {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

button {
  appearance: none;
  background: #311bf6;
  color: white;
  border-radius: 0.25rem;
  padding: 0.5rem 1rem;
  border: none;
  font-weight: bold;
}

label {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  align-items: center;
  font-weight: bold;
  font-size: 1.5rem;
}

input {
  background: #f5f9fd;
  border: 2px solid #dce0ea;
  padding: 1rem;
  border-radius: 0.25rem;
  font-weight: bold;
  font-size: 1rem;
}

output {
  font-size: 3rem;
}
